/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package gcs.persistencia;

import gcs.modelo.ParticipanteCampeonato;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;

/**
 *
 * @author albertg
 */
public abstract class GestorParticipanteCampeonato {
    
    public static void guardar(ParticipanteCampeonato pc) throws Exception
    {
        String sentencia;
        
        sentencia = "INSERT INTO Participante(DNI,Nombre,Apellidos,Localidad,Provincia,esActivo,num_faltas_leves,num_faltas_graves, num_faltas_muy_graves, ID_Campeonato) ";
        sentencia += "VALUES('" + pc.identificador.toString() + "', '" + pc.nombre + "', '" + pc.apellidos + "', '" + pc.localidad + "', '" + pc.provincia + "', 1, 0, 0, 0, 'HdM')";
    
        GestorBD.ejecutarActualizacion(sentencia);
    }
    
    public static ArrayList<ParticipanteCampeonato> consultar() throws Exception
    {
        String sentencia = "SELECT * FROM Participante WHERE ID_Campeonato='HdM'";
        ArrayList<ParticipanteCampeonato> l_pc = new ArrayList<ParticipanteCampeonato>();
        
        Connection conn = GestorBD.getConnection();
        Statement st = conn.createStatement();
        ResultSet rs = st.executeQuery(sentencia);
        
        ParticipanteCampeonato pc;
        
        while(rs.next())
        {
            pc=new ParticipanteCampeonato();
            
            pc.identificador = rs.getString("DNI");
            pc.nombre =rs.getString("Nombre");
            pc.apellidos = rs.getString("Apellidos");
            pc.localidad = rs.getString("Localidad");
            pc.provincia = rs.getString("Provincia");
            pc.esActivo=rs.getBoolean("esActivo");
            pc.numeroFaltasLeves=rs.getInt("num_faltas_leves");
            pc.numeroFaltasGraves=rs.getInt("num_faltas_graves");
            pc.numeroFaltasMuyGraves=rs.getInt("num_faltas_muy_graves");
            
            
            l_pc.add(pc);
        }
        
        rs.close();
        
        st.close();
        
        return l_pc;
    }
}
